package com.itheima.demo8api;

import java.math.BigDecimal;
import java.math.RoundingMode;

public class test3 {
    public static void main(String[] args)
    {
//        目标：掌握BigDecimal类的使用,解决浮点数精度丢失问题
        double d1 = 0.1;
        double d2 = 0.2;
        System.out.println(d1+d2);
//        怎么解决呢？使用BigDecimal类
        BigDecimal bd1 = new BigDecimal("0.1");
        BigDecimal bd1_2 = new BigDecimal(d1);
        BigDecimal bd2 = new BigDecimal("0.2");
        BigDecimal bd2_2 = new BigDecimal(d2);
        BigDecimal bd3 = BigDecimal.valueOf(d1);
        BigDecimal bd4 = BigDecimal.valueOf(d2);
        System.out.println(bd3.add(bd4).doubleValue());//把BigDecimal转成double
        System.out.println("------------------------");
        double a=0.1;
        double b=0.3;
        BigDecimal bd5 = new BigDecimal(a);
        BigDecimal bd6 = new BigDecimal(b);
        BigDecimal bd7 = bd5.divide(bd6,4, RoundingMode.UP);
        System.out.println(bd7.doubleValue());
    }
}
